﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using ERPJopi.DAL.Enums;
using System.ComponentModel.DataAnnotations.Schema;

namespace ERPJopi.DAL.Entities.AbstractsClasses
{
    
    public abstract class Pessoa
    {
        [Required(ErrorMessage = "'Nome' é um campo obrigatório"), MaxLength(40)]
        [Display(Name = "Nome da pessoa")]
        public string Nome { get; set; }
                
        [MaxLength(20)]
        [Display(Name = "Apelido da pessoa")]
        public string Apelido { get; set; }
        
        [MaxLength(4)]
        public string Ramal { get; set; }
        
        [Required(ErrorMessage="'Tipo da Pessoa' é um campo obrigatório")]
        [EnumDataType(typeof(TipoPessoa))]
        [Display(Name = "Tipo da pessoa")]
        public TipoPessoa TipoDePessoa { get; set; }

        [Display(Name = "CPF ou CNPJ")]
        public string CpfCnpj { get; set; }

        [Display(Name = "Status")]
        [Required]
        [EnumDataType(typeof(StatusPessoa))]
        public StatusPessoa Status { get; set; }
        
    }
}
